import request from './request'

// 固定响应管理 API

/**
 * 新增固定响应
 * @param {Object} data - 固定响应数据
 * @param {string} data.api - 目标接口路径
 * @param {string} data.paramHash - 参数哈希值
 * @param {string} data.resultJson - 期望返回的JSON字符串
 * @param {boolean} data.isActive - 是否激活
 * @returns {Promise<Object>} 新建记录的响应
 */
export function createFixedResponse(data) {
  return request.post('/fixed-responses', data)
}

/**
 * 更新固定响应
 * @param {number} id - 记录ID
 * @param {Object} data - 要更新的数据
 * @param {string} data.api - 目标接口路径
 * @param {string} data.paramHash - 参数哈希值
 * @param {string} data.resultJson - 期望返回的JSON字符串
 * @param {boolean} data.isActive - 是否激活
 * @returns {Promise<Object>} 更新结果
 */
export function updateFixedResponse(id, data) {
  return request.put(`/fixed-responses/${id}`, data)
}

/**
 * 删除固定响应
 * @param {number} id - 记录ID
 * @returns {Promise<Object>} 删除结果
 */
export function deleteFixedResponse(id) {
  return request.delete(`/fixed-responses/${id}`)
}

/**
 * 获取固定响应详情
 * @param {number} id - 记录ID
 * @returns {Promise<Object>} 固定响应详情
 */
export function getFixedResponseById(id) {
  return request.get(`/fixed-responses/${id}`)
}

/**
 * 获取固定响应分页列表
 * @param {Object} params - 查询参数
 * @param {number} [params.pageNum=1] - 页码
 * @param {number} [params.pageSize=10] - 每页大小
 * @param {string} [params.api] - API路径过滤
 * @param {boolean} [params.isActive] - 激活状态过滤
 * @returns {Promise<Object>} 分页响应数据
 */
export function getFixedResponses(params = {}) {
  return request.get('/fixed-responses', { params })
}